#每个元素加上'sb'
name=['oldboy','alex','wusir']
print([n+'_sb'for n in name])
print(map(lambda x:x+'_sb',name))
print(list(map(lambda x:x+'_sb',name)))
# 用map来处理下述l，然后用list得到一个新的列表，列表中每个人的名字都是sb结尾
l=[{'name':'alex'},{'name':'y'}]
print(list(map(lambda x:x['name']+'sb',l)))

# 有下面字典，得到购买每只股票的总价格，并放在一个迭代器中结果：list一下[9110.0, 27161.0,......]

portfolio = [
  {'name': 'IBM', 'shares': 100, 'price': 91.1},
{'name': 'AAPL', 'shares': 50, 'price': 543.22},
{'name': 'FB', 'shares': 200, 'price': 21.09},
{'name': 'HPQ', 'shares': 35, 'price': 31.75},
{'name': 'YHOO', 'shares': 45, 'price': 16.35},
{'name': 'ACME', 'shares': 75, 'price': 115.65}]
print(list(map(lambda x:x['price']*x['shares'],portfolio)))
# 还是上面的字典，用filter过滤出单价大于100的股票。
print(list(filter(lambda x:x['price']>100,portfolio)))

# 有下列三种数据类型，
#
l1 = [1,2,3,4,5,6]
l2 = ['oldboy','alex','wusir','太白','日天']
tu = ('**','***','****','*******')
# ​写代码，最终得到的是（每个元祖第一个元素>2,第三个*至少是4个。）
# [(3, 'wusir', '****'), (4, '太白', '*******')]这样的数据。
print(list(zip(l1,l2,tu)))#[(1, 'oldboy', '**'), (2, 'alex', '***'), (3, 'wusir', '****'), (4, '太白', '*******')]
print(list(filter(lambda x:x[0]>2 and len(x[-1])>=4,zip(l1,l2,tu))))

# ​	7. 有如下数据类型(实战题)：

l1 = [ {'sales_volumn': 0},

	{'sales_volumn': 108},

	{'sales_volumn': 337},

	{'sales_volumn': 475},

	{'sales_volumn': 396},

	{'sales_volumn': 172},

	{'sales_volumn': 9},

	{'sales_volumn': 58},

	{'sales_volumn': 272},

	{'sales_volumn': 456},

	{'sales_volumn': 440},

	{'sales_volumn': 239}]
# ​	将l1按照列表中的每个字典的values大小进行排序，形成一个新的列表。
print(sorted(l1,key=lambda x:x['sales_volumn']))

# 求结果(面试题)
def func():
    return 6

v = [lambda :x for x in range(10)]#最后返回的都是9的内存地址
# [function 432423, function 65654, function 756767,.......]
print(v)
print(v[0])
print(v[0]()) # lambda : x 9
print(v[-1]())
# 求结果(面试题)
v = (lambda :x for x in range(10))
print(v)#<generator object <genexpr> at 0x000002287A5C6D68> 生成器对象,next,for循环,list时，才运行
#print(v[0])#TypeError: 'generator' object is not subscriptable
#print(v[0]())#TypeError: 'generator' object is not subscriptable
print(next(v))  # <function <genexpr>.<lambda> at 0x000002448FB47E18>     ， lambda :x
print(next(v)()) #  lambda :0  lambda :1



print(str(100))
print(list(map(str,[1,2,3,4,5,6,7,8,9])))#  输出是什么? # (面试题)












